home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / networking / mail / mh / contrib / queuemh / queuemh-scripts / assign < prev    next >
Encoding:
Text File  |  1992-11-08  |  1.7 KB  |  100 lines

  1. #!/bin/sh
  2. #
  3. #  Helen Wong
  4. #  July 14, 1991
  5. #
  6. #  Modified by: dyker Fri Mar 20 13:13:48 MST 1992
  7. #    cleaned-up/took-out lots of superfluous stuff
  8. #    fixed setting of folder
  9. #    fixed the ed stuff - (some machines don't deal with /)
  10. #    made it so it deals with only the first 25 lines
  11. #    consolidated mhpath commands so it's only executed once
  12. #    added recognition of last, first, next, prev, and cur as valid msgs
  13. #
  14. #  This program inserts an Assigned-To component and login names in a mh
  15. #  message.
  16.  
  17. PATH=/usr/local/mh/bin:/bin:/usr/bin:/usr/ucb
  18. component="Assigned-To:"
  19. form="-form /homes/troubmh/Mail/pscan.form"
  20. usage="usage: $0 [msg] [+folder] name-list
  21.     msg: one msg
  22.     name-list: login name(s)"
  23.  
  24. if [ $# -eq 0 ]
  25. then
  26.     echo  "$usage"
  27.     exit 1
  28. fi
  29.  
  30. while [ $# -ne 0 ]
  31. do
  32.     case $1 in
  33.       
  34.       +*)    if [ -n "$folder"  ]
  35.         then
  36.             echo "folder: one folder"
  37.             exit 1
  38.         else
  39.             folder=$1
  40.             mhpath $folder
  41.             if [ $? -ne 0  ]
  42.             then
  43.                 echo  "$folder does not exist"
  44.                 exit 1
  45.             fi
  46.         fi;;
  47.     
  48.     [0-9]*|last|first|cur|next|prev)
  49.         if [ -n "$msg"  ]
  50.         then
  51.             echo "$usage"
  52.             exit 1
  53.         else
  54.             msg=$1
  55.         fi;;
  56.  
  57.     [A-z]*)    name_list="$name_list $1";;
  58.  
  59.         
  60.          *)    echo  "$usage"
  61.         exit 1;;
  62.  
  63.     esac
  64.     shift
  65.  
  66. done
  67.  
  68. folder="${folder-+${FOLDER-`folder -fast`}}"
  69.  
  70. msg=${msg-cur}
  71. msgpath=`mhpath $folder $msg 2>/dev/null`
  72. if [ "$msgpath" = "" ] 
  73. then 
  74.     echo  "Current message does not exist"
  75.     exit 1
  76. fi
  77.  
  78. if [ -z "$name_list"  ]
  79. then 
  80.     echo    "$usage"
  81.     exit 1
  82. fi
  83.  
  84.  
  85. annotate="anno $folder $msg -nodate -inplace -component $component -text "$name_list""
  86.  
  87. head -25 $msgpath | grep -s "^$component"
  88. if [ $? -eq 0  ]     
  89. then
  90.     ed -s $msgpath <<END
  91.     1,25s/^$component.*/$component $name_list/
  92.     w
  93.     q
  94. END
  95. else 
  96.     $annotate
  97. fi
  98.      
  99. scan $folder $msg $form
  100.